// pages/user/money/index/index.js
const App = getApp()
let videoAd = null

import Util from "../../../utils/util"
Page({

    /**
     * 页面的初始数据
     */
    data: {
        tabbar: {},
        signshow: false,
        user_date_log: [],
        isSign: 0
    },
      /**
   * 获取分销商中心数据
   */
  getDealerCenter() {
    let _this = this;
    App._get('user.dealer/center', {}, function(result) {
      let data = result.data;
      data.isData = true;
    //   // 设置当前页面标题
    //   wx.setNavigationBarTitle({
    //     title: data.words.index.title.value
    //   });
      _this.setData(data);
    });
  },
    //获取手机号
    handlePhone(e) {
        console.log(e)
        if (e.detail.errMsg != 'getPhoneNumber:fail user deny') {
            // 获取手机号
            wx.login({
                success: (res) => {

                    App._post_form("user/bindPhone", {
                        encryptedData: e.detail.encryptedData,
                        iv: e.detail.iv,
                        code: res.code
                    }, () => {
                        wx.showToast({
                            title: '绑定成功',
                        })
                        this.getUserDetail();

                    })
                }
            })

        }


    },
    //获取签到记录暂时不用
    fetchRecord() {
        App._post_form('user/getSignLog', {
            date: this.data.date
        }, (res) => {
            if (res.code == 1) {
                let arr = []
                res.data.list.map((v) => {
                    arr.push(v.date)
                    return v;
                })
                this.setData({
                    user_date_log: arr,
                    signlist: res.data.list
                })

                if (this.data.user_date_log.indexOf(this.data.date) != -1) {

                    this.setData({
                        isSign: 1
                    })
                } else {
                    this.setData({
                        isSign: 0
                    })
                }

            }
        });
    },
    //获取签到记录
    fetchRecordList() {
        App._post_form('user/getSignRecordsByWeek', {
            date: this.data.date
        }, (res) => {
            if (res.code == 1) {
                var day = 0
                let a = new Date(this.data.date).getDay() * 1

                if (a == 0) { //等于星期日
                    day = 6
                } else { //等于星期几
                    day = a - 1
                }
                res.data.logs = res.data.logs.map((v, index) => {
                    if (day == index && v == 1) {
                        this.setData({
                            isSign: 1
                        })
                    }
                    if (day < index) {
                        v = 2
                    }
                    return v

                })
                this.setData(res.data)

            }
        });
    },
    // 获取广告
    fetchAdver() {
        App._post_form('info/getAdverts', {
            type: 1
        }, (res) => {
            console.log(res.data)
            this.setData({
                adverts: res.data.adverts
            })
        });
    },
    // 获取任务
    fetchAdvers() {
        App._post_form('user/getTask', {

        }, (res) => {
            console.log(res.data.list)
            res.data.list= res.data.list.map((v)=>{
                v.total=(v.send_value*v.view_count).toFixed(2)
                return v;
            })
            this.setData({
                advert: res.data.list
            })
        });
    },
    //点击播放广告
    openadver(e) {
       
        wx.showLoading({
          title: '加载中',
        })
        let unit_id = e.currentTarget.dataset.unitid
        let id = e.currentTarget.dataset.id
        console.log(unit_id)
        console.log(id)
        this.getadver(unit_id, id)
        // 在合适的位置打开广告
        if (videoAd) {
            
            videoAd.show().catch(err => {
               
                // 失败重试
                videoAd.load()
                    .then(() => videoAd.show())
            })
        }

    },
    // 获取金额
    handleprice(e) {
        console.log(e)
        this.setData({
            price: e.detail.value
        })
    },

    /**
     * 点击立即签到
     */

    handleSign() {
        if(!wx.getStorageSync('token')){
            wx.navigateTo({
              url: '../../login/login',
            })
            return false
        }

        App._post_form('user/sign', {
            date: this.data.date
        }, (res) => {
            this.fetchRecordList()
            this.setData({
                signshow: true,
                isSign: 1
            })
        });
    },
    //邀请
    handlevisit(){
        if(!wx.getStorageSync('token')){
            wx.navigateTo({
              url: '../../login/login',
            })
            return false
        }
        if(this.data.is_dealer){
            wx.navigateTo({
                url:"../../dealer/qrcode/qrcode"
              })
        }else{
            wx.navigateTo({
                url:"../../dealer/index/index"
              })
        }
       

    },
    //关闭 签到成功页面
    handleClose() {
        this.setData({
            signshow: false
        })
    },
    //加载广告

    getadver(adunit, id) {
        var _this = this
        const version = wx.getSystemInfoSync().SDKVersion
        if (Util.compareVersion(version, '2.6.0') >= 0) {


            // 在页面onLoad回调事件中创建激励视频广告实例
            if (wx.createRewardedVideoAd) {
                videoAd = wx.createRewardedVideoAd({
                    adUnitId: adunit

                })
                try {
                    console.log(videoAd.closeHandler)
                    if (videoAd.closeHandler) {
                        videoAd.offClose(videoAd.closeHandler);
                        console.log("videoAd.offClose卸载成功");
                    }

                } catch (e) {
                    console.log("videoAd.offClose 卸载失败");
                }

                videoAd.onLoad(() => {
                    wx.hideLoading({
                        success: (res) => {},
                      })
                })
                videoAd.onError((err) => {})
                videoAd.closeHandler = function (res) {

                    if (res && res.isEnded || res === undefined) {
                        // 正常播放结束，下发奖励
                        // continue you code
                        App._post_form("user/taskFinish", {
                            unit_id: adunit,
                            type: 1,
                            task_id: id
                        }, (res) => {
                            _this.fetchAdvers()

                        })
                        wx.showModal({
                            title: '提示',
                            content: '是否继续做任务',
                            success(res) {
                                if (res.confirm) {

                                    console.log('用户点击确定')
                                } else if (res.cancel) {
                                    wx.switchTab({
                                        url: '../../index/index',
                                    })
                                    console.log('用户点击取消')
                                }
                            }
                        })


                    } else {
                        // 播放中途退出，进行提示
                        // wx.showModal({
                        //     title: '暂无获得奖励',
                        //     content: '是否继续观看视频',
                        //     success (res) {
                        //       if (res.confirm) {
                        //         console.log('用户点击确定')
                        //       } else if (res.cancel) {
                        //         console.log('用户点击取消')
                        //       }
                        //     }
                        //   })
                    }

                }
                videoAd.onClose(videoAd.closeHandler);
            }
        } else {
            // 如果希望用户在最新版本的客户端上体验您的小程序，可以这样子提示
            wx.showModal({
                title: '提示',
                content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
            })
        }


    },

    /**
     * 获取我的钱包
     */
    getUserDetail: function () {
        let _this = this;
        App._get('user.wallet/index', {}, function (result) {
            _this.setData(result.data);
        });
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        App.editTabbar();
       

        // this.fetchRecord()
        this.fetchAdver()

        // this.getadver()
        this.setData({
            date: Util.dateFormat('YYYY-mm-dd', new Date())
        })

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
        if(wx.getStorageSync('token')){
            this.getUserDetail()
            this.fetchAdvers()
            this.fetchRecordList()
            this.getDealerCenter()
        }
      
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})